package cn.lili.modules.store.entity.dto;

import cn.lili.common.validation.Mobile;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

/**
 * 后台添加店铺信息DTO
 *
 * @author Bulbasaur
 * @since 2020/12/12 11:35
 */
@Data
public class StoreApplyDTO {

    @NotBlank(message = "用户名不能为空")
    @ApiModelProperty(value = "用户名")
    private String username;

    @NotBlank(message = "密码不能为空")
    @ApiModelProperty(value = "密码")
    private String password;

    @Mobile
    @NotBlank(message = "手机号不能为空")
    @ApiModelProperty(value = "手机号")
    private String mobile;


    /****法人信息***/
    @NotBlank(message = "法人姓名不能为空")
    @Size(min = 2, max = 20, message = "法人姓名长度为2-20位字符")
    @ApiModelProperty(value = "法人姓名")
    private String legalPerson;

    @NotBlank(message = "法人身份证不能为空")
    @Size(min = 18, max = 18, message = "法人身份证号长度为18位")
    @ApiModelProperty(value = "法人身份证")
    private String legalPersonId;

    @ApiModelProperty(value = "法人身份证照片 正面")
    @NotBlank(message = "法人身份证正面照片 不能为空")
    private String legalPhoto1;
    @NotBlank(message = "法人身份证背面照片 不能为空")
    @ApiModelProperty(value = "法人身份证照片 背面")
    private String legalPhoto2;


    /**
     * @see cn.lili.modules.store.entity.enums.StoreSceneEnum
     */
    @NotBlank(message = "scene cant be null")
    @ApiModelProperty(value = "场景")
    private String scene;

    @Size(min = 2, max = 20, message = "店铺名称最短2位数，最大20位数")
    @ApiModelProperty(value = "店铺名称")
    private String storeName;

    @ApiModelProperty(value = "店铺logo")
    private String storeLogo = "https://feiyu-lshop-test.oss-cn-beijing.aliyuncs.com/default.png";

    @Size(min = 6, max = 200, message = "店铺简介需在6-200字符之间")
    @ApiModelProperty(value = "店铺简介")
    private String storeDesc;

    @ApiModelProperty(value = "经纬度")
    private String storeCenter;

    @ApiModelProperty(value = "店铺经营类目")
    //@NotBlank(message = "店铺经营类目 不能为空")
    private String[] businessCategory;

    @ApiModelProperty(value = "经营许可证")
    private String businessLicense;

    @ApiModelProperty(value = "是否自营")
    private Boolean selfOperated;

    /****营业执照信息***/
    @Size(min = 18, max = 18, message = "营业执照长度为18位字符")
    @ApiModelProperty(value = "营业执照号")
    private String licenseNum;

    @ApiModelProperty(value = "营业执照电子版")
    @NotBlank(message = "营业执照电子版 不能为空")
    private String licencePhoto;



    @ApiModelProperty(value = "微信进件二级商户id")
    private String wechatSubMchid;

    @ApiModelProperty(value = "是否为盲和店铺  true/false 是/不是")
    private Boolean isBlindbox;

    @ApiModelProperty(value = "供应商所属城市分站ID")
    private String urbanUserId;

    @ApiModelProperty(value = "是否允许从1688采集商品")
    private Boolean grabAlibabaOpen = false;

    @ApiModelProperty(value = "是否礼包店铺  true/false")
    private Boolean isGiftStore;

    @ApiModelProperty("是否免税店铺")
    private Boolean isFree;
}
